package cn.cai.pethome.pet.mapper;

import cn.cai.pethome.pet.domain.Image;
import cn.cai.pethome.base.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author xiaocai
 * @since 2022-09-10
 */
@Component
public interface ImageMapper extends BaseMapper<Image> {

    /**
     * 批量保存宠物图片t_image表
     * @param imgUrls
     * @param imageType
     * @param businessId
     */
    void batchSave(@Param("imgUrls") List<String> imgUrls,
                   @Param("imageType") int imageType,
                   @Param("businessId") Long businessId);

    /**
     * 根据图片类型和业务id查询图片
     * @param imageType  图片所属类型：1表示宠物图片  2表示商品图片
     * @param businessId 业务主键：imgType为1时关联宠物表主键 imgType为2时关联商品主键
     * @return
     */
    List<Image> findByTypeAndBusinessId(@Param("imageType") Integer imageType,
                                        @Param("businessId") Long businessId);


    /**
     * 通过宠物id外键删除图片 在修改t_image表之前先根据petid删除数据在添加数据
     * @param petId
     */
    void deleteByBusinessId(Long petId);
}
